
package limfic.persistencia.mysql;

import limfic.persistencia.RepositorioException;
import java.util.List;

/**
 * Interfaz generica que contiene operaciones basicas de la base de datos
 * <p>Otras interfaces la heredan para realizar las operaciones con los datos correspondiente a sus clases </p>
 * <p><code>E</code> es de tipo Entity o clase generica</p>
 * @author OpenCodes
 */
public interface IRepositorioGenerico<E> {
    boolean existe(String[] parametrosChekeo) throws RepositorioException;
    void agregar(E entity) throws RepositorioException;
    void modificar(E entity) throws RepositorioException;
    void eliminar(E entity) throws RepositorioException;
    List<E> obtenerUno(String id) throws RepositorioException;
    List<E> obtenerAlgunos(String[] parametrosBusqueda) throws RepositorioException;
    List<E> obtenerTodos() throws RepositorioException;
}
